<HTML>
<HEAD>
<title>DBMaker.Maker - </title>
<link rel="stylesheet" href="../../../style.css">
</HEAD>
<BODY>
<a href="../../index.html">org.mapdb</a>&nbsp;/&nbsp;<a href="../index.html">DBMaker</a>&nbsp;/&nbsp;<a href=".">Maker</a><br/>
<br/>
<h1>Maker</h1>
<code><span class="keyword">class </span><span class="identifier">Maker</span></code><br/>
<br/>
<br/>
<h3>Constructors</h3>
<table>
<tbody>
<tr>
<td>
<a href="-init-.html">&lt;init&gt;</a></td>
<td>
<code><span class="identifier">Maker</span><span class="symbol">(</span><span class="identifier" id="org.mapdb.DBMaker.Maker$<init>(org.mapdb.DBMaker.StoreType, org.mapdb.volume.Volume, kotlin.Boolean, kotlin.String)/_storeType">_storeType</span><span class="symbol">:</span>&nbsp;<a href="../-store-type/index.html"><span class="identifier">StoreType</span></a><span class="symbol">?</span><span class="symbol">, </span><span class="identifier" id="org.mapdb.DBMaker.Maker$<init>(org.mapdb.DBMaker.StoreType, org.mapdb.volume.Volume, kotlin.Boolean, kotlin.String)/_customVolume">_customVolume</span><span class="symbol">:</span>&nbsp;<a href="../../../org.mapdb.volume/-volume/index.html"><span class="identifier">Volume</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="org.mapdb.DBMaker.Maker$<init>(org.mapdb.DBMaker.StoreType, org.mapdb.volume.Volume, kotlin.Boolean, kotlin.String)/_volumeExist">_volumeExist</span><span class="symbol">:</span>&nbsp;<span class="identifier">Boolean</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="org.mapdb.DBMaker.Maker$<init>(org.mapdb.DBMaker.StoreType, org.mapdb.volume.Volume, kotlin.Boolean, kotlin.String)/file">file</span><span class="symbol">:</span>&nbsp;<span class="identifier">String</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code></td>
</tr>
</tbody>
</table>
<h3>Functions</h3>
<table>
<tbody>
<tr>
<td>
<a href="allocate-increment.html">allocateIncrement</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">allocateIncrement</span><span class="symbol">(</span><span class="identifier" id="org.mapdb.DBMaker.Maker$allocateIncrement(kotlin.Long)/incrementSize">incrementSize</span><span class="symbol">:</span>&nbsp;<span class="identifier">Long</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="allocate-start-size.html">allocateStartSize</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">allocateStartSize</span><span class="symbol">(</span><span class="identifier" id="org.mapdb.DBMaker.Maker$allocateStartSize(kotlin.Long)/size">size</span><span class="symbol">:</span>&nbsp;<span class="identifier">Long</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="assert-file.html">assertFile</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">assertFile</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Unit</span></code></td>
</tr>
<tr>
<td>
<a href="checksum-header-bypass.html">checksumHeaderBypass</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">checksumHeaderBypass</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>MapDB detects unclean shutdown (and possible data corruption) by Header Checksum.
This checksum becomes invalid if store was modified, but not closed correctly.
In that case MapDB will throw an exception and will refuse to open the store.</p>
</td>
</tr>
<tr>
<td>
<a href="checksum-store-enable.html">checksumStoreEnable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">checksumStoreEnable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>Enables store wide checksum. Entire file is covered by 64bit checksum to catch possible data corruption.
This could be slow, since entire file is traversed to calculate checksum on store open, commit and close.</p>
</td>
</tr>
<tr>
<td>
<a href="cleaner-hack-enable.html">cleanerHackEnable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">cleanerHackEnable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="close-on-jvm-shutdown.html">closeOnJvmShutdown</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">closeOnJvmShutdown</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>Adds JVM shutdown hook and closes DB just before JVM;</p>
</td>
</tr>
<tr>
<td>
<a href="close-on-jvm-shutdown-weak-reference.html">closeOnJvmShutdownWeakReference</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">closeOnJvmShutdownWeakReference</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>Adds JVM shutdown hook and closes DB just before JVM.
This is similar to <code>closeOnJvmShutdown()</code>, but DB is referenced with <code>WeakReference</code> from shutdown hook
and can be GCed. That might prevent memory leaks under some conditions, but does not guarantee DB will be actually closed.</p>
</td>
</tr>
<tr>
<td>
<a href="concurrency-disable.html">concurrencyDisable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">concurrencyDisable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>WARNING:  this option is dangerous. With locks disabled multi-threaded access could cause data corruption and causes.
MapDB does not have fail-fast iterator or any other means of protection</p>
</td>
</tr>
<tr>
<td>
<a href="concurrency-scale.html">concurrencyScale</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">concurrencyScale</span><span class="symbol">(</span><span class="identifier" id="org.mapdb.DBMaker.Maker$concurrencyScale(kotlin.Int)/segmentCount">segmentCount</span><span class="symbol">:</span>&nbsp;<span class="identifier">Int</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>This value has to be power of two, so it is rounded up automatically.</p>
</td>
</tr>
<tr>
<td>
<a href="delete-files-after-close.html">deleteFilesAfterClose</a></td>
<td>
<code><span class="keyword">fun </span><s><span class="identifier">deleteFilesAfterClose</span></s><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="executor-enable.html">executorEnable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">executorEnable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>Enables background executor</p>
</td>
</tr>
<tr>
<td>
<a href="file-channel-enable.html">fileChannelEnable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">fileChannelEnable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>Enable FileChannel access. By default MapDB uses {@link java.io.RandomAccessFile}.
whic is slower and more robust. but does not allow concurrent access (parallel read and writes). RAF is still thread-safe
but has global lock.
FileChannel does not have global lock, and is faster compared to RAF. However memory-mapped files are
probably best choice.</p>
</td>
</tr>
<tr>
<td>
<a href="file-delete-after-close.html">fileDeleteAfterClose</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">fileDeleteAfterClose</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="file-delete-after-open.html">fileDeleteAfterOpen</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">fileDeleteAfterOpen</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="file-lock-disable.html">fileLockDisable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">fileLockDisable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="file-lock-wait.html">fileLockWait</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">fileLockWait</span><span class="symbol">(</span><span class="identifier" id="org.mapdb.DBMaker.Maker$fileLockWait(kotlin.Long)/timeout">timeout</span><span class="symbol">:</span>&nbsp;<span class="identifier">Long</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><br/>
<code><span class="keyword">fun </span><span class="identifier">fileLockWait</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="file-mmap-enable.html">fileMmapEnable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">fileMmapEnable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>You may experience {@code java.lang.OutOfMemoryError: Map failed} exception on 32bit JVM, if you enable this
mode.</p>
</td>
</tr>
<tr>
<td>
<a href="file-mmap-enable-if-supported.html">fileMmapEnableIfSupported</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">fileMmapEnableIfSupported</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>Enable Memory Mapped Files only if current JVM supports it (is 64bit).</p>
</td>
</tr>
<tr>
<td>
<a href="file-mmap-preclear-disable.html">fileMmapPreclearDisable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">fileMmapPreclearDisable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
<tr>
<td>
<a href="make.html">make</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">make</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../-d-b/index.html"><span class="identifier">DB</span></a></code></td>
</tr>
<tr>
<td>
<a href="read-only.html">readOnly</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">readOnly</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code><p>Open store in read-only mode. Any modification attempt will throw
UnsupportedOperationException("Read-only")</p>
</td>
</tr>
<tr>
<td>
<a href="transaction-enable.html">transactionEnable</a></td>
<td>
<code><span class="keyword">fun </span><span class="identifier">transactionEnable</span><span class="symbol">(</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Maker</span></code></td>
</tr>
</tbody>
</table>
</BODY>
</HTML>
